﻿namespace RebellionII.GameObjects.Units
{
    public class Character: BaseUnit
    {

        public int iDiplomacy { get; set; }
        public int iEspionage { get; set; }
        public int iCombat { get; set; }
        public int iLeadership { get; set; }

        public int iJediLevel { get; set; }
        public int iLoyalty { get; set; }

        public int iChanceOfJedi { get; set; }

        public bool bIsKnownJedi { get; set; }

        public bool bIsAdmiral { get; set; }
        public bool bIsCommander { get; set; }
        public bool bIsGeneral { get; set; }
        public bool bIsKeyCharacter { get; set; }

        public int iResearchSpeed { get; set; }

        public Character(string name, string texture, int dip, int esp, int com, int lead, int jedi, int loyalty,
            int jediChance, bool isJedi, bool adm, bool comm, bool gen, bool key, int research)
        {
            sName = name;
            sTextureName = texture;
            iDiplomacy = dip;
            iEspionage = esp;
            iCombat = com;
            iLeadership = lead;
            iLoyalty = loyalty;
            iJediLevel = jedi;
            iChanceOfJedi = jediChance;
            bIsKnownJedi = isJedi;
            bIsAdmiral = adm;
            bIsCommander = comm;
            bIsGeneral = gen;
            bIsKeyCharacter = key;
            iResearchSpeed = research;
        }

        public Character(bool yes)
        {
            sName = "default";
            sTextureName = "default";

            iConstructionCost = 0;
            iMaintenanceCost = 0;

            iDiplomacy = 80;
            iEspionage = 80;
            iCombat = 80;
            iLeadership = 80;
            iLoyalty = 95;
            iJediLevel = 80;
            iChanceOfJedi = 0;
            bIsKnownJedi = false;
            bIsAdmiral = false;
            bIsCommander = false;
            bIsGeneral = false;
            bIsKeyCharacter = false;
            iResearchSpeed = 10;
            TheTeam = TeamName.Alliance;
        }

        public Character()
        {
        
        }
    }
}
